﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using BLL.IServiceImplementation;
using DAL;
using DAL.DataSourceInterface;
using BLL.DTO.Comuna;
using BLL.Mappers;

namespace BLL.ServiceImplementation
{
    public class ComunaSvcImpl : IComunaSvc
    {
        //Se instancia la interfaz de DAO
        private readonly IComunaDAO getComunaDao;

        public ComunaSvcImpl()
        {
            //Acceso a la implementación del DAO por medio del dataaccess
            getComunaDao = DataAccess.GetComunaDAO;
        }

        //Implementación de la interfaz
        public List<ComunaDTO> GetAll()
        {
            var listComuna = getComunaDao.GetAll();
            List<ComunaDTO> listComunaDTO = ComunaMappers.toDto(listComuna);
            return listComunaDTO;
        }


        public List<ComunaDTO> GetAllByIdComuna(int pk_Comuna)
        {
            var listComuna = getComunaDao.GetAllByIdComuna(pk_Comuna);
            List<ComunaDTO> listComunaDTO = ComunaMappers.toDto(listComuna);
            return listComunaDTO;
        }

        public List<ComunaDTO> GetAllByIdCity(int fk_Ciudad)
        {
            var listComuna = getComunaDao.GetAllByIdCity(fk_Ciudad);
            List<ComunaDTO> listComunaDTO = ComunaMappers.toDto(listComuna);
            return listComunaDTO;
        }
    }
}
